# -*- coding: utf-8 -*-
from django.contrib import admin
from servsocial.models import StatusCompromisso, Compromisso
from servsocial.forms import CompromissoForm

admin.site.register(StatusCompromisso)
#admin.site.register(Compromisso)

class CompromissoAdmin(admin.ModelAdmin):
    form = CompromissoForm
    search_fields = ['status__descricao', 'assunto']
    date_hierarchy = 'data'
    ordering = ['status', 'data']
    list_display = ['editar', 'get_status', 'get_usuario', 'get_data', 'atividade', 'assunto']


#    def queryset(self, request): #TODO: Usado para filtrar os compromissos apenas para o usuario logado
#        return Compromisso.objects.filter(usuario = request.user) 

    def save_model(self,request,obj,form,change): #TODO: Salva no usuario o usario logado (user)
        obj.usuario = request.user 
        obj.save() 

    def editar(self, obj):
        return '<img src="/media/img/16x16/editar.png" title="Editar" />'
    editar.allow_tags = True
    editar.short_description = ''
    
    def get_status(self, obj):        
        if obj.status.descricao == u'Concluído':
            return '<img src="/media/img/green-circle.png" title="Concluído" />'
        elif obj.status.descricao == u'Em Andamento':
            return '<img src="/media/img/yellow-circle.png" title="Em Andamento" />'
        elif obj.status.descricao == u'Pendente':
            return '<img src="/media/img/red-circle.png" title="Pendente" />'
    get_status.short_description = u'Status'
    get_status.admin_order_field = 'status'
    get_status.allow_tags = True
    
    def get_data(self, obj):
        return obj.data.strftime("%d/%m/%Y")
    get_data.short_description = u'Data'
    get_data.admin_order_field = 'data'
    get_data.allow_tags = True
    
    def get_usuario(self, obj):
        return obj.usuario.get_full_name()
    get_usuario.short_description = u'Nome do Usuário'
    get_usuario.admin_order_field = 'usuario'
    get_usuarioallow_tags = True
admin.site.register(Compromisso, CompromissoAdmin)